package cn.edu.wynu.operator;

public class OperatorDemo06 {
    public static void main(String[] args) {
        // 1.三元运算符
        double score = 59.5;
        String grade = score >= 60 ? "及格" : "不及格";
        System.out.println(grade);

        // 实例1：找出两个整数中的较大值
        int a = 10;
        int b = 88;
        int max1 = a > b ? a : b;
        System.out.println(max1);

        // 实例2：找出三个整数中的最大值
        int c = 78;
        int max2 = a > b ? (a > c ? a : c) : (b > c ? b : c);
        System.out.println(max2);

        System.out.println("----------------------");

        // 2.运算符的优先级
        // 括号运算符 > 算术运算符 > 关系运算符 > 逻辑运算符 > 赋值运算符 > 条件运算符 > 扩展赋值运算符
        /*
        由高到低：从左到右，遇到括号就先运算括号内的表达式，再运算括号外的表达式
        （）、[]、{}
        ！、~、++、--
        *、/、%
        +、-
        <<、>>、>>>
        <、<=、>、>=、instanceof
        ==、!=
        &
        ^
        |
        &&
        ||
        ? :
        =、+=、-=、*=、/=、%=、&=、|=、^=、~=、<<=、>>=、>>>=
        ,
        */
        System.out.println(10 > 3 || 10 > 3 && 10 < 3); // true
        System.out.println(10 < 3 || 10 > 3 && 10 < 3); // false
        System.out.println((10 > 3 || 10 > 3) && 10 < 3); // false



    }
}
